/*
 * stack.h
 *
 *  Created on: Oct 2, 2011
 *      Author: kimi
 */

#ifndef STACK_H_
#define STACK_H_

/*
 6620 STACK API
 */

/*Inserta un nuevo valor en la pila.
 Devuelve 1 en caso de correcta insercion.
 0 en cualquier otro caso.*/
extern int Push(double *basePila, int tamanioPila, int *cantidadElementos,
		double valor);

/*Quita el elemento tope de la pila. Pasando el valor a obtener por parametro.
 Devuelve 1 en caso de haber podido obtener un elemento.
 0 en cualquier otro caso.*/
extern int Pop(double *basePila, int tamanioPila, int *cantidadElementos,
		double *valor);

/*Recorre toda la pila sumando todos los elementos que la componen
 retornando el resultado de la suma.
 Devuelve 1 en caso de haber podido obtener la suma total de los elementos.
 0 en cualquier otro caso.
 */
extern int SumaTotal(double *basePila, int tamanioPila, int *cantidadElementos,
		double *resultadoSuma);

#endif /* STACK_H_ */
